define(function(require, exports, module) {
  var lang = require('lang');

  var viewData = {
    example: {
      header: {
        title: lang.get('my') + lang.get('example'),
        crumbs: [{
          link: '#',
          icon: 'fa fa-dashboard',
          label: lang.get('example') + lang.get('manage')
        }, {
          active: true,
          label: lang.get('my') + lang.get('example')
        }]
      },
      label: {
        title: lang.example.title.text,
        message: lang.example.message.text
      },
      placeholder: {}
    },
    todo: {
      header: {
        title: lang.get('todo') + lang.get('list'),
        crumbs: [{
          link: '#',
          icon: 'fa fa-dashboard',
          label: lang.get('todo') + lang.get('manage')
        }, {
          active: true,
          label: lang.get('my') + lang.get('todo')
        }]
      },
      label: {
        itsm: lang.get('itsm','todo'),
        title: lang.get('title'),
        detail: lang.get('detail'),
        fromTo: lang.get('fromTo', 'todo'),
        hours: lang.get('hours', 'todo'),
        priority: lang.get('priority'),
        country: lang.get('country'),
        category: lang.get('category'),
        start: lang.get('start', 'todo'),
        end: lang.get('end', 'todo')
      },
      placeholder: {}
    },
    timesheet: {
      header: {
        title: lang.get('timesheet') + lang.get('list'),
        crumbs: [{
          link: '#',
          icon: 'fa fa-dashboard',
          label: lang.get('timesheet') + lang.get('manage')
        }, {
          active: true,
          label: lang.get('my') + lang.get('timesheet')
        }]
      },
      label: {
        todo: lang.get('todo'),
        today: lang.get('date'),
        from: lang.get('from', 'timesheet'),
        to: lang.get('to', 'timesheet'),
        hours: lang.get('hours', 'timesheet'),
        detail: lang.get('detail')
        },
      placeholder: {}
    },
    uc_pwd: {
      header: {
        title: lang.get('uc_pwd'),
        crumbs: [{
          link: '#',
          icon: 'fa fa-dashboard',
          label: lang.get('setting')
        }, {
          active: true,
          label: lang.get('uc_pwd')
        }]
      },
      label: {
        oldPassword: lang.get('oldPWD', 'ucenter'),
        newPassword: lang.get('newPWD', 'ucenter'),
        newPassword2: lang.get('PWD2', 'ucenter')
      },
      placeholder: {}
    },
    user: {
      info: {
        remember: lang.info('103'),
        forget: lang.info('104'),
        reset: lang.info('105'),
        activate: lang.info('101'),
        signin: lang.get('user') + lang.get('signin'),
        signup: lang.get('user') + lang.get('signup')
      },
      button: {
        signin: lang.get('signin'),
        signup: lang.get('signup'),
        commit: lang.get('commit'),
        resetpwd: lang.get('reset') + lang.get('password')
      },
      label: {
        username: lang.get('user'),
        password: lang.get('password'),
        password2: lang.info('106'),
        email: lang.get('email')
      },
      placeholder: {}
    }
  };

  _.each(viewData, function(val, key) {
    _.each(viewData[key].label, function(lVal, lKey) {
      viewData[key].placeholder[lKey] = lang.global.please_input.text + lVal + (viewData[key].placeholder[lKey] || '');
    });
  });




  module.exports = {
    url: {
      admin: {
        user: '/admin/user',
        example: '/admin/model/example',
        todo: '/admin/model/todo',
        timesheet: '/admin/model/timesheet'
      },
      ucenter: {
        password: '/admin/ucenter/password',
        captcha: '/captcha/start/5?r='
      }
    },
    format: {
      datepicker: 'yyyy-mm-dd',
      moment: {
        date: 'YYYY-MM-DD',
        time: 'HH:mm',
        datetime: 'YYYY-MM-DDHH:mm'
      },
      daterangepicker: {
        format: 'YYYY-MM-DD',
        separator: ' ~ ',
        applyClass: 'btn-primary',
        buttonClasses: 'btn btn-sm btn-flat',
        locale: {
          applyLabel: lang.button('apply'),
          cancelLabel: lang.button('cancel')
        }
      }
    },
    example: {
      header: viewData.example.header,
      label: viewData.example.label,
      placeholder: viewData.example.placeholder
    },
    button: {
      edit: lang.button('edit'),
      remove: lang.button('remove')
    },
    ucenter: {
      password: {
        header: viewData.uc_pwd.header,
        label: viewData.uc_pwd.label,
        placeholder: viewData.uc_pwd.placeholder
      }
    },
    user: {
      info: viewData.user.info,
      button: viewData.user.button,
      label: viewData.user.label,
      placeholder: viewData.user.placeholder
    },
    todo: {
      header: viewData.todo.header,
      label: viewData.todo.label,
      placeholder: viewData.todo.placeholder,
      country: function() {
        return [
          {value: 'GLOBAL', text: lang.get('global')},
          {value: 'AR', text: lang.getCountry('AR')},
          {value: 'AU', text: lang.getCountry('AU')},
          {value: 'CL', text: lang.getCountry('CL')},
          {value: 'CN', text: lang.getCountry('CN')},
          {value: 'ES', text: lang.getCountry('ES')},
          {value: 'GB', text: lang.getCountry('GB')},
          {value: 'IT', text: lang.getCountry('IT')},
          {value: 'MX', text: lang.getCountry('MX')},
          {value: 'MY', text: lang.getCountry('MY')},
          {value: 'PH', text: lang.getCountry('PH')},
          {value: 'PL', text: lang.getCountry('PL')},
          {value: 'RU', text: lang.getCountry('RU')},
          {value: 'TH', text: lang.getCountry('TH')},
          {value: 'US', text: lang.getCountry('US')},
          {value: 'ZA', text: lang.getCountry('ZA')},
          {value: 'ZM', text: lang.getCountry('ZM')}
        ];
      },
      priority: function() {
        return [
          {value: '1', text: 'High'},
          {value: '2', text: 'Medium'},
          {value: '3', text: 'Low'}
        ];
      },
      category: function() {
        return [
          {value: 'ASLF', text: 'ASLF'},
          {value: 'ART', text: 'ART'},
          {value: 'COACH', text: 'COACH'},
          {value: 'AMWAY', text: 'AMWAY'}
        ];
      }
    },
    timesheet: {
      header: viewData.timesheet.header,
      label: viewData.timesheet.label,
      placeholder: viewData.timesheet.placeholder
    }
  };
});